package jp.co.technotree.service;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletContext;

import jp.co.technotree.common.controll.ApplicationContext;
import jp.co.technotree.common.dao.HashBean;
import jp.co.technotree.common.dao.Transaction;
import jp.co.technotree.common.dao.TransactionManager;
import jp.co.technotree.dao.order.bean.OrderBean;
import jp.co.technotree.dao.order.bean.OrderStandardDAO;
import jp.co.technotree.exception.DataAccessException;
import jp.co.technotree.exception.TransactionException;

public class OrderReceiveListService {

	public ServletContext application;
	
	
	/**
	 * 
	 * @return
	 */
	public List<OrderBean> getList(){

		List<OrderBean> ret = new ArrayList<OrderBean>();
		String path = application.getRealPath("/");
		ApplicationContext.init(path);

		Transaction trx = null;
		try {
			trx = TransactionManager.getTransaction();
			trx.begin();
			
			
			OrderStandardDAO odrDao = new OrderStandardDAO();
			
			HashBean hashBean = odrDao.getOrderParentList();
			
			if(hashBean != null){
				hashBean.first();
				for(int i=0; i<hashBean.size(); i++){
					hashBean.next();
					OrderBean retBean = new OrderBean();
					
					retBean.setItemCd(String.valueOf(hashBean.getLong("id")));
					retBean.setItemName(hashBean.getString("record02"));
					
					ret.add(retBean);
				}
			}
			
			trx.commit();
			
		} catch (TransactionException e) {
			// TODO 自動生成された catch ブロック
			e.printStackTrace();
		} catch (DataAccessException e) {
			// TODO 自動生成された catch ブロック
			e.printStackTrace();
		} catch (Exception e) {
			// TODO 自動生成された catch ブロック
			e.printStackTrace();
		}
		
		
		System.out.println("---aaaa-----");
		
		return ret;
	}
	
	
	/**
	 * 
	 * @return
	 */
	public OrderBean getOrderList(){

		OrderBean ret = new OrderBean();
		String path = application.getRealPath("/");
		ApplicationContext.init(path);

		Transaction trx = null;
		try {
			trx = TransactionManager.getTransaction();
			trx.begin();
			
			
			OrderStandardDAO odrDao = new OrderStandardDAO();
			
			HashBean hashBean = odrDao.getOrderParentList();
			
			if(hashBean != null){
				hashBean.first();
				for(int i=0; i<hashBean.size(); i++){
					hashBean.next();
					OrderBean retBean = new OrderBean();
					
					retBean.setItemCd(String.valueOf(hashBean.getLong("id")));
					retBean.setItemName(hashBean.getString("record02"));
					
					ret = retBean;
					break;
				}
			}
			
			trx.commit();
			
		} catch (TransactionException e) {
			// TODO 自動生成された catch ブロック
			e.printStackTrace();
		} catch (DataAccessException e) {
			// TODO 自動生成された catch ブロック
			e.printStackTrace();
		} catch (Exception e) {
			// TODO 自動生成された catch ブロック
			e.printStackTrace();
		}
		
		
		System.out.println("---aaaa-----");
		
		return ret;
	}
	

}

